package cn.com.shopec.erp.financing.entity;

import java.io.Serializable;
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToMany;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;

/**
 * @ClassName SettlementPO
 * @Description 购销结算实体
 * @author gujianfeng
 * @date 2013-5-22 上午10:55:27
 */
@Entity
@Table(name = "TBL_PO_SETTLEMENT")
public class PurchaseSaleOfAccountsPO implements Serializable {
    private static final long serialVersionUID = -7063569470332119460L;
    /** 作废状态 **/
    private int cancelstate;
    /** 审核人 **/
    private String checkname;
    /** 审核状态 **/
    private int checkstate = 10;
    /** 审核时间 **/
    private String checktime;
    /** 创建时间 **/
    private String createtime;
    /** 删除标志 **/
    private int deleteFlag;
//    private List<PurchaseSaleOfSettlementPO> dllPOs;
    /** 结算日期 **/
    private String enddate;
    /** 结算结束时间 **/
    private String endtime;

    /** 结算周期 **/
    private String accountTime;
    /** id **/
    private String settlementid;
    /** 结算人 **/
    private String settlementname;
    /** 结算时间 **/
    private String settlementtime;
    /** 结算总金额 **/
    private Double settlementtotal;
    /** 结算状态 **/
    private int settleStatus = 10;
    /** 结算开始日期 **/
    private String startdate;
    /** 结算单据号 **/
    private String statementno;
    /** 供应商名称 **/
    private String suppliername;
    /** 供应商编号 **/
    private String supplierno;

    private String brand;
    
    private double actTotal;
    @Column(name="ACT_TOTAL")
    public double getActTotal() {
		return actTotal;
	}

	public void setActTotal(double actTotal) {
		this.actTotal = actTotal;
	}

	@Column(name = "ACOUNT_TIME")
    public String getAccountTime() {
        return this.accountTime;
    }

    public void setAccountTime(String accountTime) {
        this.accountTime = accountTime;
    }

    @Column(name = "BRAND")
    public String getBrand() {
        return this.brand;
    }

    public void setBrand(String brand) {
        this.brand = brand;
    }

    public PurchaseSaleOfAccountsPO() {
    }

    @Column(name = "cancel_state")
    public int getCancelstate() {
        return this.cancelstate;
    }

    @Column(name = "check_name")
    public String getCheckname() {
        return this.checkname;
    }

    @Column(name = "check_state")
    public int getCheckstate() {
        return this.checkstate;
    }

    @Column(name = "check_time")
    public String getChecktime() {
        return this.checktime;
    }

    @Column(name = "create_time")
    public String getCreatetime() {
        return this.createtime;
    }

    @Column(name = "delete_flag")
    public int getDeleteflag() {
        return this.deleteFlag;
    }

    // @OneToMany(targetEntity = PurchaseSaleOfSettlementPO.class, cascade =
    // { CascadeType.PERSIST, CascadeType.MERGE }, mappedBy = "suppPo", fetch =
    // FetchType.EAGER)
//    @OneToMany(targetEntity = PurchaseSaleOfSettlementPO.class,fetch = FetchType.EAGER)
//    @JoinColumn(name = "statement_no", referencedColumnName = "statement_no", insertable = false, updatable = false)
//    public List<PurchaseSaleOfSettlementPO> getDllPOs() {
//        return this.dllPOs;
//    }

    @Column(name = "end_date")
    public String getEnddate() {
        return this.enddate;
    }

    @Column(name = "END_TIME")
    public String getEndtime() {
        return this.endtime;
    }

    @GenericGenerator(name = "generator", strategy = "uuid.hex")
    @Id
    @GeneratedValue(generator = "generator")
    @Column(name = "settlement_id", unique = true, nullable = false, length = 32)
    // @Column(name = "settlement_id", nullable = false)
    public String getSettlementid() {
        return this.settlementid;
    }

    @Column(name = "settlement_name")
    public String getSettlementname() {
        return this.settlementname;
    }

    @Column(name = "settlement_time")
    public String getSettlementtime() {
        return this.settlementtime;
    }

    @Column(name = "settlement_total")
    public Double getSettlementtotal() {
        return this.settlementtotal;
    }

    @Column(name = "settlement_state")
    public int getSettleStatus() {
        return this.settleStatus;
    }

    @Column(name = "START_DATE")
    public String getStartdate() {
        return this.startdate;
    }

    @Column(name = "statement_no")
    public String getStatementno() {
        return this.statementno;
    }

    @Column(name = "supplier_name")
    public String getSuppliername() {
        return this.suppliername;
    }

    @Column(name = "supplier_no")
    public String getSupplierno() {
        return this.supplierno;
    }

    public void setCancelstate(int cancelstate) {
        this.cancelstate = cancelstate;
    }

    public void setCheckname(String checkname) {
        this.checkname = checkname;
    }

    public void setCheckstate(int checkstate) {
        this.checkstate = checkstate;
    }

    public void setChecktime(String checktime) {
        this.checktime = checktime;
    }

    public void setCreatetime(String createtime) {
        this.createtime = createtime;
    }

    public void setDeleteflag(int deleteFlag) {
        this.deleteFlag = deleteFlag;
    }

//    public void setDllPOs(List<PurchaseSaleOfSettlementPO> dllPOs) {
//        this.dllPOs = dllPOs;
//    }

    public void setEnddate(String enddate) {
        this.enddate = enddate;
    }

    public void setEndtime(String endtime) {
        this.endtime = endtime;
    }

    public void setSettlementid(String settlementid) {
        this.settlementid = settlementid;
    }

    public void setSettlementname(String settlementname) {
        this.settlementname = settlementname;
    }

    public void setSettlementtime(String settlementtime) {
        this.settlementtime = settlementtime;
    }

    public void setSettlementtotal(Double settlementtotal) {
        this.settlementtotal = settlementtotal;
    }

    public void setSettleStatus(int settleStatus) {
        this.settleStatus = settleStatus;
    }

    public void setStartdate(String startdate) {
        this.startdate = startdate;
    }

    public void setStatementno(String statementno) {
        this.statementno = statementno;
    }

    public void setSuppliername(String suppliername) {
        this.suppliername = suppliername;
    }

    public void setSupplierno(String supplierno) {
        this.supplierno = supplierno;
    }
}
